package com.sgzn.sgpay.enums;

/**
 * sgpay-service 响应码
 * @author zhongzhongyong
 * @version Id: SgsResponseCode.java, v 0.1 2018/4/3 23:27 zhongzhongyong Exp $$
 */
public enum SgsResponseCode {

    C200("000000", "成功"),
    C503("011000", "系统错误"),
    C200000("SGS01000000", "前置服务成功"),
    C503000("SGS01991000", "业务系统异常"),
    C10001("SGS01880001", "请求参数无效"),
    C011007("011007", "交易处理中，请稍候查询"),
    C_TOKEN_NOT_FOUND("011001", "用户loginToken无法查得"),
    C_WAIT_BANK_RESP("011007", "支付请求已受理,等待银行返回结果"),
    C_WAIT_AUDIT("011007", "支付请求已受理,等待审核"),
    C_PAY_CALLBACK_ERR("011008", "回调接口出现异常"),
    C_DB_EXCEPTION("011009", "数据库脚本执行异常"),
    C_USERNAME_UPDATE_EXCEPTION("011010", "用户名更新失败"),
    C_MERCHANT_NOT_FOUND("011011", "无法查得有效商户信息"),
    C_MERCHANT_ACCOUNT_UPDATE_ERR("011012", "商户账户积分更新异常"),
    C_DEVICE_NOT_FOUND("011013", "无法查得有效设备信息"),
    C_USER_NOT_FOUND("011014", "无法查得有效用户信息"),
    C_BALANCE_NOT_ENOUGH("011015", "余额不足(积分不足)"),
    C_USER_ACCOUNT_NOT_FOUND("011016", "用户未充值"),
    C_CREDIT_INCREASE_FAIL("011017", "响应上分为零，上分失败"),
    C_VALID_ORDER_NOT_FOUND("011018", "无法查得有效订单信息"),
    C_TCP_CONSUME_FAIL("011019", "tcp上分消费异常"),
    C_CRED_INC_ORDER_FAIL("011020", "该上分订单状态已失败，无需重复处理"),
    C_EXCHANGECOININFO_NOT_FOUND("011021", "无法查得有效兑换比例信息"),
    C_SHOP_NOT_FOUND("011022", "无法查得有效门店信息"),
    C_PULSEINFO_NOT_FOUND("011023", "无法查得有效脉冲信息"),
    C_PRIV_NOT_FOUND("011024", "无法查得有效权限信息"),
    C_REPEAT_MCH_CONTACT("011025", "该手机已注册，请更换！"),
    C_MCH_NOT_FOUND("011026", "该账户不存在"),
    C_MCH_PWD_ERROR("011027", "登录密码错误"),
    C_MCH_LOGIN_PWD_NOT_EQL("011028", "两次登录密码不一致,请确认！"),
    C_TOKEN_INVALID("011029", "无效token"),
    C_CODE_NOT_FOUND("011030", "验证码输入错误"),
    C_CODE_OVERTIME("011031", "验证码已过期"),
    C_MCH_MOBILE_NOT_REGIS("011032", "该手机未注册！"),
    C_SHOP_ADD_ERR("011033", "门店新增失败"),
    C_SHOP_BIND_DEVICE_EXIST("011034", "该门店仍有绑定设备，不可删除"),
    C_DUPLICATE_DEVICE_EXIST("011035", "重复新增设备，该设备已经存在"),
    C_MCH_PRIV_BATCH_ADD_FAIL("011036", "商户权限批量新增失败"),
    C_MCH_BAN_QUERY_FAIL("011037", "商户余额查询失败"),
    C_MCH_LIMIT_NOT_ENOUGH("011038", "商户超过当日提现限额"),
    C_MCH_BALANCE_NOT_ENOUGH("011039", "商户余额不足"),
    C_USER_MERCHANT_DISCOUNT_ADD_ERR("011040", "用户商户子账户新增失败"),
    C_USER_MERCHANT_NOT_FOUND("011041", "没有对应的用户商户子账户记录"),
    C_USER_MERCHANT_DISCOUNT_UPDATE_ERR("011042", "用户商户子账户记录更新失败"),
    C_USER_MCHANT_DISCOUNT_NOT_ENOUGH("011043", "用户商户子账户余额不足,请使用用户余额"),
    C_MCH_Bank_NOT_SUPPORT("011044", "没找到卡Bin,不支持该银行卡"),
    C_MCH_Bank_NOT_CONSISTENT("011045", "银行卡身份证姓名预留手机号码不一致，请核实"),
    DEVICE_RECORD_FAIL("011046", "设备操作记录失败"),
    MERCHANT_UN_INIT_INCOME_RECORD("011047", "商户未初始化收益记录"),
    C_CRED_INC_ORDER_EXIST("011048", "该设备已存在上分待回调订单"),

    C403("011403", "抱歉，您没有权限访问该接口"),
    C500("011500", "抱歉，系统运行异常"),

    C10002("SGS01880002", "请求报文格式错误"),
    C10003("SGS01880003", "参数校验失败: "),
    C10004("SGS01880004", "参数类型转换失败"),
    C10005("SGS01880005", "该请求序列号已存在"),
    C10006("SGS01880006", "请求序列号或平台号或客户号不能为空"),
    C10007("SGS01880007", "请求报文验签失败"),
    C10008("SGS01880008", "请求客户校验失败"),
    C10009("SGS01880009", "请求平台校验失败"),
    C10010("SGS01880010", "请求客户与平台关系校验失败"),
    C10011("SGS01880011", "您没有权限进行此交易"),
    C10012("SGS01880012", "您的请求次数超过限制，请稍后再试！"),
    C10013("SGS01880013", "查询不到相应数据"),
    C10014("SGS01880014", "收付款账号不可相同"),
    C10015("SGS01880015", "[%s]所属客户与平台关系校验失败"),
    C10016("SGS01880016", "请求客户、收款方账号所属客户与平台关系校验失败"),
    C10017("SGS01880017", "开始时间与结束时间的间隔不能超过[%s]天"),
    C10018("SGS01880018", "开始时间不能大于结束时间"),
    C10019("SGS01880019", "流量控制信息查询失败"),
    C10020("SGS01880020", "安全中心超时，验签失败"),
    C10021("SGS01880021", "该银行卡未授权，请先绑定银行卡再做交易"),
    C10022("SGS01880022", "该银行账户不能进行该交易"),
    C10023("SGS01880023", "该客户没有绑定默认银行卡，请先指定默认银行卡再做交易"),
    C10024("SGS01880024", "平台不一致，交易非法"),
    C10025("SGS01880025", "分账账户不可包含发起方账户"),
    C10026("SGS01880026", "分账账户不可包含中间账户"),
    C10027("SGS01880027", "分账金额与交易总金额不一致"),
    C10028("SGS01880028", "分账账户不可重复"),
    C10029("SGS01880029", "查询条件的时间不可晚于当前时间"),
    C10030("SGS01880030", "查询条件的开始时间不可晚于结束时间"),
    C10031("SGS01880031", "账户[%s]属于待结算账户，不可进行该交易"),
    C10032("SGS01880032", "账户[%s]属于虚拟账户，不可进行该交易"),
    C10033("SGS01880033", "抱歉，该交易不允许冲正"),
    C10034("SGS01880034", "签约信息不存在"),
    C10035("SGS01880035", "分给[%s]的金额不可为0"),
    C10036("SGS01880036", "原交易流水号为[%s]的子单冲正失败，失败原因为[%s]"),
    C10037("SGS01880037", "该交易不在允许发起的时间期限内"),
    C10038("SGS01880038", "没有查询到相应的银行卡信息"),
    C10039("SGS01880039", "没有查询到相应的账户余额信息"),
    C10040("SGS01880040", "查询条件：外部订单号、请求流水号、交易流水号不能同时为空"),
    C10041("SGS01880041", "短信验证码不能为空"),
    C10042("SGS01880042", "查询条件：原交易外部订单号、交易流水号不能同时为空"),
    C10043("SGS01880043", "您的交易信息与申请时不一致，请重新获取短信验证码！"),
    C10044("SGS01880044", "无法根据您的银行卡信息查询到相应路由信息，请联系客服！"),
    C10045("SGS01880045", "银行卡信息验证无效，请填写正确的相关信息"),
    C10046("SGS01880046", "该订单已经成功回调过，不能重复补回调"),
    C10047("SGS01880047", "用信用卡交易时信用卡码或有效期不能为空"),
    C10048("SGS01880048", "查询不到您的银行账户的卡表信息"),
    C10049("SGS01880049", "银行编码或者卡类型与对应银行账号不匹配"),
    C10050("SGS01880050", "该交易不能使用信用卡"),
    C10051("SGS01880051", "无法交易，原因是外部订单号已被使用"),
    C10052("SGS01880052", "退款信息与原交易不一致，交易拒绝"),
    C10053("SGS01880053", "客户号不一致，交易非法"),
    C10054("SGS01880054", "抱歉，本接口不支持该交易的退款"),
    C10055("SGS01880055", "原交易流水号、原交易请求流水号不能同时为空"),
    C10056("SGS01880056", "无法找到需要被冲正的原交易信息"),
    C10057("SGS01880057", "无法找到需要退款的原交易信息"),
    C10058("SGS01880058", "根据退款信息查询出交易记录有多条，退款失败"),
    C10059("SGS01880059", "二级商户未报备，无权交易"),
    C10060("SGS01880060", "登录号[%s]无效"),
    C10061("SGS01880061", "登录号[%s]所属客户账户状态无效"),
    C10062("SGS01880062", "登录号[%s]所属操作员状态无效"),
    C10063("SGS01880063", "该登陆员无有效的交易账户"),
    C10064("SGS01880064", "交易账户[%s]无效"),
    C10065("SGS01880065", "手续费分档信息不存在"),
    C10066("SGS01880066", "收款方不归属该平台，交易拒绝"),
    C10067("SGS01880067", "原交易非您发起，交易拒绝"),
    C10068("SGS01880068", "该银行不支持此种方式的快捷验证请求"),
    C10069("SGS01880069", "解密AES密钥密文失败"),
    C10070("SGS01880070", "AES解密失败"),
    C10071("SGS01880071", "账户[%s]不属于客户[%s]"),
    C10072("SGS01880072", "账户号和账户名不匹配"),
    C10073("SGS01880073", "金额大于等于5万,请填写备注信息"),
    C10074("SGS01880074", "获取鉴权码失败"),
    C10075("SGS01880075", "签名认证失败"),
    C10076("SGS01880076", "基金申购交易不允许在节假日发起"),
    C10077("SGS01880077", "基金周期不正确"),
    C10078("SGS01880078", "查询不到服务费方案"),
    C10079("SGS01880079", "已发起授权，请等待授权结果"),
    C10080("SGS01880080", "调用征信授权接口失败"),
    C10081("SGS01880081", "商户授权信息管理服务异常"),
    C10082("SGS01880082", "号码授权信息管理服务异常"),
    C10083("SGS01880083", "授权失败"),
    C10084("SGS01880084", "商户授权信息查询服务异常"),
    C10085("SGS01880085", "用户尚未授权"),
    C10086("SGS01880086", "用户尚在授权申请中"),
    C10087("SGS01880087", "号码不存在"),
    C10088("SGS01880088", "该业务暂不支持移动号码"),
    C10089("SGS01880089", "该业务暂不支持联通号码"),
    C19999("019999", "系统通讯出现异常，请联系客服");

    private final String code;
    private final String desc;

    SgsResponseCode(String responseCode, String responseDesc) {
        this.code = responseCode;
        this.desc = responseDesc;
    }

    public String getResponseCode() {
        return code;
    }

    public String getResponseDesc() {
        return desc;
    }
}
